package com.example.study.service;

import java.util.List;

public interface RedisService {
    /**
     * 保存属性，设置有效时间
     * */
    void set(String key, Object value, long time);

    /**
     * 保存属性
     * */
    void set(String key, Object value);

    /**
     * 获取属性
     * */
    Object get(String key);

    /**
     * 删除属性
     * */
    Boolean delete(String key);

    /**
     * 批量删除属性
     * */
    Long delete(List<String> keys);

    /**
     * 设置过期时间
     * */
    Boolean expire(String key, long time);

    /**
     * 获取过期时间
     * */
    Long getExpire(String key);

    /**
     * 判断是否有该属性
     * */
    Boolean hasKey(String key);

    /**
     * 按delta递增
     */
    Long incr(String key, long delta);

    /**
     * 按delta递减
     */
    Long decr(String key, long delta);
}
